package com.iwomy.secureplat.platform.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;

/**
 * 短信语音消费记录详情
 *
 * @author pig
 * @date 2023-12-08 09:35:31
 */
@Data
@TableName("basic_consumption_record")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "短信语音消费记录详情")
public class BasicConsumptionRecordEntity extends Model<BasicConsumptionRecordEntity> {


	/**
	* ID
	*/
    @TableId(type = IdType.ASSIGN_ID)
    @Schema(description="ID")
    private Long id;

	/**
	* 设备id
	*/
    @Schema(description="设备id")
    private Long deviceId;

	/**
	 * IMEI
	 */
	@Schema(description = "IMEI")
	private String imei;

	/**
	 * 设备类型名称
	 */
	@Schema(description = "设备类型名称")
	private String deviceType;

	/**
	 * 设备型号名称
	 */
	@Schema(description = "设备型号名称")
	private String deviceModelName;

	/**
	* 单位id
	*/
    @Schema(description="单位id")
    private Long deptId;

	/**
	 * 客户单位id
	 */
	@Schema(description="客户单位id")
	private Long customerDeptId;


	/**
	* 通知类型:10短信,20语音
	*/
    @Schema(description="通知类型:10短信,20语音")
    private Integer notificationType;

	/**
	* 消费类型:10配送，20代付，30出库配送，40出库代付，50正常消费
	*/
    @Schema(description="消费类型:10配送，20代付，30出库配送，40出库代付，50正常消费,60设备配送，70设备代付")
    private Integer usedType;

	/**
	* 接警人
	*/
    @Schema(description="接警人")
    private String receiver;

	/**
	* 接收号码
	*/
    @Schema(description="接收号码")
    private String receivePhone;

	/**
	* 短信数量
	*/
    @Schema(description="短信数量")
    private Integer smsNumber;

	/**
	* 呼叫号码
	*/
    @Schema(description="呼叫号码")
    private String callPhone;

	/**
	* 呼叫时间
	*/
    @Schema(description="呼叫时间")
    private LocalDateTime callTime;

	/**
	* 通话时长
	*/
    @Schema(description="通话时长")
    private Integer ttsNumber;

	/**
	* 报警时间
	*/
    @Schema(description="报警时间")
    private LocalDateTime alarmTime;

	/**
	* 消耗类型:10上级单位,20用户自己
	*/
    @Schema(description="消耗类型:10上级单位,20用户自己")
    private Integer consumeType;

	/**
	* 通知状态，10成功  20失败
	*/
    @Schema(description="通知状态，10成功  20失败")
    private Integer sendState;

	/**
	* 通知结果，10用户接收成功  20用户接收失败
	*/
    @Schema(description="通知结果，10用户接收成功  20用户接收失败")
    private Integer sendResults;

	/**
	* 请求内容
	*/
    @Schema(description="请求内容")
    private String requestContent;

	/**
	* 回调内容
	*/
    @Schema(description="回调内容")
    private String callbackContent;

	/**
	* 响应内容
	*/
    @Schema(description="响应内容")
    private String responseContent;

	/**
	* 排序
	*/
    @Schema(description="排序")
    private Integer sort;

	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建时间")
    private LocalDateTime createTime;

	/**
	* 修改时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改时间")
    private LocalDateTime updateTime;
 
	/**
	* delFlag
	*/
    @TableLogic
		@TableField(fill = FieldFill.INSERT)
    @Schema(description="delFlag")
    private String delFlag;

	/**
	* 租户ID
	*/
    @Schema(description="租户ID")
    private Long tenantId;
}